
/**
 * ESPECIFICACIÓN: Función que comprueba la URL para la página de inserción del usuario del cual se quiere recuperar
 * la contraseña, para así mostrar algún error que se pueda haber producido al enviar el formulario
 **/
function checkURLInsertLogin() {
	var divWarning = document.getElementById("warning");
	var url = document.URL;

	if (url.indexOf("userExists=false") != -1) {
		//si la URL contiene el valor 'userExists=false' quiere decir que el usuario introducido en
		//el formulario no existe y, por lo tanto, mostramos la capa de error con el mensaje correspondiente
		//en su interior
		divWarning.setAttribute("style", "display: inline");
		divWarning.innerHTML = "El usuario introducido no existe. Vuelva a intentarlo.";
		document.getElementById("login").focus();
	} else {
		//si no se ha producido ningún error, ocultamos la capa de error (porque pueda estar mostrada)
		divWarning.setAttribute("style", "display: none");
	}
}

/**
 * ESPECIFICACIÓN: Función que comprueba los diferentes campos del formulario de inserción del usuario del cual
 * se quiere recuperar la contraseña y devuelve el valor correspondiente que indica si el formulario puede ser 
 * enviado (porque no se ha producido ningún error) o no puede (porque sí que se ha producido algún error)
 **/
function checkFormInsertLogin() {
	var divWarning = document.getElementById("warning");
	var login = document.getElementById("login");

	if (login.value.length == 0) {
		//si el campo correspondiente para introducir el nombre de usuario está vacío, mostramos el error correspondiente
		divWarning.setAttribute("style", "display: block");
		divWarning.innerHTML = "Por favor, introduce tu usuario.";
		login.focus();
		return false;
	} else {
		//si no se ha producido ningún error, ocultamos la capa de error (porque pueda estar mostrada) y devolvemos
		//el valor correspondiente indicando que el formulario puede ser enviado
		divWarning.setAttribute("style", "display: none");
		return true;
	}
}


/**
 * ESPECIFICACIÓN: Función que comprueba la URL para la página de respuesta a la pregunta secreta, para así mostrar 
 * algún error que se pueda haber producido al enviar el formulario
 **/
function checkURLSecretQuestion() {
	var divWarning = document.getElementById("warning");
	var url = document.URL;

	if (url.indexOf("correctAnswer=false") != -1) {
		//si la URL contiene el valor 'correctAnswer=false' quiere decir que la respuesta introducida es
		//incorrecta y, por lo tanto, mostramos la capa de error con el mensaje correspondiente en su interior
		divWarning.setAttribute("style", "display: inline");
		divWarning.innerHTML = "La respuesta introducida es incorrecta. Vuelva a intentarlo.";
		document.getElementById("secretAnswer").focus();
	} else {
		//si no se ha producido ningún error, ocultamos la capa de error (porque pueda estar mostrada)
		divWarning.setAttribute("style", "display: none");
	}
}


/**
 * ESPECIFICACIÓN: Función que comprueba los diferentes campos del formulario de respuesta a la pregunta
 * secreta y devuelve el valor correspondiente que indica si el formulario puede ser enviado (porque no se
 * ha producido ningún error) o no puede (porque sí que se ha producido algún error)
 **/
function checkFormSecretQuestion() {
	var errorFind = false;
	var errorMsg = new String();
	var secretAnswer = document.getElementById("secretAnswer");
	var pass = document.getElementById("pass");
	var passConfirm = document.getElementById("passConfirm");
	var submit = true;

	//comprobamos si el campo correspondiente para introducir la respuesta a la pregunta secreta está vacío
	if (secretAnswer.value.length == 0) {
		//añadimos el mensaje correspondiente al mensaje de error
		errorMsg = "'Respuesta' es un campo requerido";
		//dado que es el primer error, ponemos el foco en dicho campo
		secretAnswer.focus();
		//cambiamos el valor a la variable 'submit' para que no se envie el formulario
		submit = false;
	} 

	//obtenemos la longitud del campo correspondiente para introducir la nueva contraseña
	var passLength = pass.value.length;
	//comprobamos si el campo correspondiente para introducir la nueva contraseña está vacío
	if (passLength == 0) {
		//comprobamos si es el primer error encontrado
		if (! submit) {
			//añadimos el mensaje correspondiente al mensaje de error (concandenándole con el error anterior
			// y añadiéndole un un salto de linea previamente, ya que no se trata del primero encontrado)
			errorMsg = errorMsg + "<BR>'Nueva contrase&ntilde;a' es un campo requerido.";
		} else {
			//añadimos el mensaje correspondiente al mensaje de error
			errorMsg = "'Nueva contrase&ntilde;a' es un campo requerido.";
			//dado que es el primer error, ponemos el foco en dicho campo
			pass.focus();
			//cambiamos el valor a la variable 'submit' para que no se envie el formulario
			submit = false;
		}
	} else {
		//comprobamos si la nueva contraseña tiene entre 6 y 12 carácteres
		if ((pass.value.length < 6) || (pass.value.length > 12)) {
			//comprobamos si es el primer error encontrado
			if (! submit) {
				//añadimos el mensaje correspondiente al mensaje de error (concandenándole con el error anterior
				// y añadiéndole un un salto de linea previamente, ya que no se trata del primero encontrado)
				errorMsg = errorMsg + "<BR>La nueva contrase&ntilde;a debe tener entre 6 y 12 car&aacute;cteres";
			} else {
				//añadimos el mensaje correspondiente al mensaje de error
				errorMsg = "La nueva contrase&ntilde;a debe tener entre 6 y 12 car&aacute;cteres";
				//dado que es el primer error, ponemos el foco en dicho campo
				pass.focus();
				//cambiamos el valor a la variable 'submit' para que no se envie el formulario
				submit = false;
			}
		} else {
			//obtenemos la longitud del campo correspondiente para confirmar la nueva contraseña
			var passConfirmLength = passConfirm.value.length;
			//comprobamos si el campo correspondiente para introducir la nueva contraseña está vacío
			if (passConfirmLength == 0) {
				//comprobamos si es el primer error encontrado
				if (! submit) {
					//añadimos el mensaje correspondiente al mensaje de error (concandenándole con el error anterior
					// y añadiéndole un un salto de linea previamente, ya que no se trata del primero encontrado)
					errorMsg = errorMsg + "<BR>'Confirme su nueva contrase&ntilde;a' es un campo requerido.";
				} else {
					//añadimos el mensaje correspondiente al mensaje de error
					errorMsg = "'Confirme su nueva contrase&ndtilde;a' es un campo requerido.";
					//dado que es el primer error, ponemos el foco en dicho campo
					passConfirm.focus();
					//cambiamos el valor a la variable 'submit' para que no se envie el formulario
					submit = false;
				}
			} else {
				if (pass.value != passConfirm.value) {
					//comprobamos si es el primer error encontrado
					if (! submit) {
						//añadimos el mensaje correspondiente al mensaje de error (concandenándole con el error anterior
						// y añadiéndole un un salto de linea previamente, ya que no se trata del primero encontrado)
						errorMsg = errorMsg + "<BR>La nueva contrase&ntilde;a introducida y su confirmaci&oacute;n no coinciden.";
					} else {
						//añadimos el mensaje correspondiente al mensaje de error
						errorMsg = "La nueva contrase&ntilde;a introducida y su confirmaci&oacute;n no coinciden.";
						//dado que es el primer error, ponemos el foco en dicho campo
						passConfirm.focus();
						//cambiamos el valor a la variable 'submit' para que no se envie el formulario
						submit = false;
					}
				}
			}
		}
	}

	if (! submit) {
		//si se ha producido algún error, mostramos la capa de error correspondiente y le insertamos en su interior
		//el mensaje generado
		document.getElementById("warning").setAttribute("style", "display: block");
		document.getElementById("warning").innerHTML = errorMsg;
	} else {
		//si no se ha producido ningún error, ocultamos la capa de error (porque pueda estar mostrada)
		document.getElementById("warning").setAttribute("style", "display: none");
	}
	
	return submit;
}
